#include<bits/stdc++.h>
using namespace std;
long long a, b, d, k, x;
int T;
int main() {
for(scanf("%d", &T); T --; ) {
k = 1, x = 0;
scanf("%lld%lld%lld", &a, &b, &d);
int f = 0;
for(; d % 2 == 0; a >>= 1, b >>= 1, d >>= 1, k <<= 1) {
if((a & 1) || (b & 1)) {
f = 1;
break;
}
}
if(f) {
puts("-1");
continue;
}
for(int i = 0; i < 30; ++ i)
if(!(x >> i & 1))
x += (1ll << i) * d;
printf("%lld\n",x * k);
}
}
1697C - awoo's Favorite Problem | 165A - Supercentral Point |
1493A - Anti-knapsack | 1493B - Planet Lapituletti |
747B - Mammoth's Genome Decoding | 1591C - Minimize Distance |
1182B - Plus from Picture | 1674B - Dictionary |
1426C - Increase and Copy | 520C - DNA Alignment |
767A - Snacktower | 1365A - Matrix Game |
714B - Filya and Homework | 31A - Worms Evolution |
1691A - Beat The Odds | 433B - Kuriyama Mirai's Stones |
892A - Greed | 32A - Reconnaissance |
1236D - Alice and the Doll | 1207B - Square Filling |
1676D - X-Sum | 1679A - AvtoBus |
1549A - Gregor and Cryptography | 918C - The Monster |
4B - Before an Exam | 545B - Equidistant String |
1244C - The Football Season | 1696B - NIT Destroys the Universe |
1674A - Number Transformation | 1244E - Minimizing Difference |